package com.xframe.event.bus.core.annotation;



import com.xframe.event.bus.core.msg.MsgMode;

import java.lang.annotation.*;

/**
 * 接收消息注解
 *
 * @author xufeng
 * @version 1.0
 * @date 2022-09-19
 */
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE, ElementType.ANNOTATION_TYPE})
@Inherited
public @interface XReceiveMsg {
    /**
     * 接受消息的模式
     */
    MsgMode msgMode() default MsgMode.DEFMODE;

    /**
     * 交换机名称
     */
    String exchange() default "";
    /**
     * 队列名称,多个使用逗号隔开
     */
    String queue() default "";

    /**
     * 路由KEY，多个使用逗号隔开
     */
    String routingKey() default "";

    /**
     * 每次接受的消息个数
     */
    int qos() default 1;
    /**
     * 是否自动确认
     */
    boolean autoAck() default true;
}
